In recent years, there has been an increasing use of compact, pocket-size electronic personal organizers that store personal scheduling information such as appointments, tasks, phone numbers, flight schedules, alarms, birthdays, and anniversaries. Some of the more common electronic organizers are akin to handheld calculators. They have a full input keyboard with both numeric keys and alphabet keys, as well as special finction keys. The organizers also have a liquid crystal display (LCD) which often displays full sentences and rudimentary graphics.
Pocket-size personal organizers prove most useful to busy individuals who are frequently traveling or always on the move from one meeting to the next appointment. Unfortunately, due to their hectic schedules, these individuals are the people most likely to forget their personal organizers during the frantic rush to gather documents, files, laptops, cellular phones, and travel tickets before heading off to the airport or train depot. It would be desirable to reduce the number of electronic devices that these individuals need to remember for each outing.
Electronic watches have evolved to the point that they can function as personal organizers. Like the pocket-size devices described above, such watches can be programmed with certain key appointments, tasks, phone numbers, flight schedules, alarms, birthdays, and anniversaries. Since watches are part of everyday fashion attire, they are more convenient to carry and less likely to be forgotten by busy people. However, it is much more difficult to enter data into a watch than it is to enter the same data into a pocket-size personal organizer. This difficulty is due in large part to the limited number of input buttons and display characters available on reasonably-sized watches. Most watches are limited to having only four to six input buttons. A wearer programs a watch by depressing one or more buttons several times to cycle through various menu options. Once an option is selected, the user depresses another button or buttons to input the desired information. These input techniques can be inconvenient and difficult to remember. Such techniques are particularly inconvenient when a wearer wishes to enter an entire month's schedule. Although watches have been made with larger numbers of input keys, such watches are usually much too large for comfort, and tend to be particularly unattractive.
Apart from personal organizers, it is common for many people to maintain appointment calendars and task lists on their personal computers. One example time management software is Microsoft's.RTM. Schedule+.TM. for Windows.TM. which maintains daily appointment schedules, to-do lists, personal notes, and calendar planning. This information is often a duplicate of that maintained on the portable personal organizer.
Timex Corporation of Middlebury, Conn., has recently introduced the Timex.RTM. Data-Link.TM. watch. This watch utilizes new technology for transferring information from a personal computer to a watch. The face of the watch has an optical sensor which is connected to a digital serial receiver, better known as a UART (universal asynchronous receiver/transmitter). The watch expects to receive a serial bit transmission in the form of light pulses at a fixed bit rate. A pulse represents a binary `0` bit, and the absence of a pulse represents a binary `1` bit.
The CRT (cathode ray tube) or other scanned-pixel display of a personal computer is normally used to provide light pulses to the watch. Although it appears to a human viewer that all pixels of a CRT are illuminated simultaneously, the pixels are actually illuminated individually, one at a time, by an electron beam which sequentially scans each row or raster line of pixels beginning with the top raster line and ending with the bottom raster line. It is this characteristic of a CRT and of other line-scanning display devices which is utilized to transmit serial data to the Data-Link.TM. watch.
To transfer data to the watch, the watch is held near and facing the CRT. The computer is programmed to display a sequence of display frames in which spaced data transmission raster lines represent individual bits of data. Lines are illuminated or not illuminated, depending on whether they represent binary `0` bits or binary `1` bits. Each line appears as a continuous light pulse of a finite duration to the receiving watch. The watch recognizes an illuminated line as a binary `0` bit. It recognizes a non-illuminated line as a binary `1` bit. Generally, integral numbers of "words" of ten bits are transmitted in a single CRT display frame: eight data bits, a start bit, and a stop bit. As used herein, the term "display frame" means a single screen-size image made up of a matrix of pixels which form a plurality of raster lines. A display frame is generally created by sequentially illuminating or refreshing the raster lines of the display device.
FIG. 1 shows a system 10 as described above. System 10 includes a computer or computer system 11 and a portable or external information receiving device in the form of programmable Data-Link.TM. watch 12. Computer 11 includes a frame or raster scanning graphics display device 14, a central processing unit (CPU) 15 having a data processor, memory, and I/O components, and a keyboard 16 (or other input device).
Visual display device 14 is preferably a CRT (cathode ray tube) monitor such as commonly used in personal desktop computers. The graphics display device displays sequential display frames containing graphical images on its monitor screen 22. A "display frame" or "frame" means- a single, two-dimensional, screen-size image made up of a matrix of pixels. The pixels form a plurality of available raster lines for each display frame.
The individual pixels and raster lines of a CRT are illuminated individually by an electron beam (i.e., the cathode ray) which sequentially scans each raster line beginning with the top raster line and ending with the bottom raster line. The beam is deflected horizontally (in the line direction) and vertically (in the field direction) to scan an area of the screen to produce a single display frame. The electron beam strikes phosphors positioned at the screen of the CRT monitor to cause them to glow. The phosphors are arranged according to a desired pixel pattern, which is customarily a matrix of rows and columns. Conventional color VGA monitors typically have a resolution of 640.times.480 pixels or better. The process of scanning all raster lines a single time and returning the electron beam from the bottom to the top of the display is referred to as a "frame scan."
The linear scanning electron beam of CRT 14 is utilized to transfer a binary data stream between computer 11 and watch 12. Specifically, computer 11 uses selected, spaced raster lines of CRT 14 for serial bit transmission to watch 12. Application software loaded in CPU 15 generates a sequence of display frames having changing patterns of raster lines that are displayed on CRT 14. The lines appear at watch 12 as a series of optical pulses. Watch 12, through optical sensor 13, monitors the illumination of the raster lines of the sequential display frames to reconstruct the transmitted data.
FIG. 2 shows a specific pattern of selected and spaced raster lines used to transmit data to watch 12. Assuming that each frame transmits a single 8-bit byte with start and stop bits, ten raster lines 30(1)-30(10) (out of a much larger total number of available raster lines) are selected for transmitting data. These raster lines will be referred to herein as "data transmission raster lines," as opposed to other, intervening raster lines which will be referred to as "unused raster lines." Solid lines in FIG. 2 represent data transmission raster lines which are illuminated. Dashed raster lines in FIG. 2 represent data transmission raster lines which are not illuminated. Each data transmission raster line position conveys one data bit of information. Bits having a first binary value, such as a value `0`, are represented by illuminated data transmission lines (e.g., lines 30(1), 30(2), 30(4), and 30(7)-30(9)) and bits having a second binary value, such as a value `1`, are represented by non-illuminated data transmission lines (as illustrated pictorially by the dashed lines 30(3), 30(5), 30(6), and 30(10)). The data transmission raster lines are spaced at selected intervals, with intervening unused or non-selected raster lines, to produce a desired temporal spacing appropriate for the data receiving electronics of watch 12.
For each programming instruction or data to be transmitted to the watch, the software resident in the CPU 15 causes the CRT monitor 14 to selectively illuminate the appropriate data transmission raster lines representing `0` bits by scanning the associated pixels. The selected data transmission lines that represent `1` bits are left non-illuminated. The middle eight lines 30(2)-30(9) represent one byte of programming information being optically transmitted to watch 12. Top line 30(1) represents a start bit and bottom line 30(10) represents a stop bit that are used for timing and error detection. Because of the scanning nature of the cathode ray of CRT monitor 14, these patterns produce a serial light emission from CRT monitor 14 which is representative of a serial bit stream. Each display frame in FIG. 2 represents one byte. A new line grouping is presented for each sequential display frame so that each such display frame represents a different data byte. Two or more bytes could optionally be transmitted in each display frame.
The display of FIG. 2 implements a serial, edge-based, optical transmission format as shown by example signal 29 in the timing diagram of FIG. 3, in which the horizontal direction indicates time and the vertical direction indicates optical signal intensity. Individual bits of the transferred binary data stream have first and second binary values which are represented in this transmission format by the presence or absence of optical signal edges at what are referred to herein as "mark times" 32(1)-32(9). The mark times are specified to occur at a pre-selected bit rate such as 1024 bits/second or 2048 bits/second. They are represented in FIG. 3 by the vertical arrows beneath signal 29. To work with the current implementation of the Data-Link.TM. watch, the pre-selected bit rate should be approximately equal to 2048 bits/second.
This type of signal has the characteristic of returning to a "low" value before every transmitted bit. This type of transmission format is necessitated by the nature of a scanning device such as CRT 14. The longest continuous optical pulse duration which can be generated with CRT 14 is the that of a horizontal raster line. This is because the electron beam of the CRT is deactivated between lines. The duration of a single raster line is significantly less than the time between mark times at practical bit rates.
The start bit of a single byte is represented in FIG. 2 by illuminated horizontal raster line 30(1). Illuminated raster line 30(1) produces a light pulse 31(1) as shown in FIG. 3 of a relatively short duration. The rising edge of light pulse 31(1) occurs at a first mark time 32(1). The first bit of the transmitted byte is a "0", and is represented in FIG. 2 by illuminated horizontal raster line 30(2). Illuminated raster line 30(2) produces a light pulse 31(2) (FIG. 3); The rising edge of light pulse 31(2) occurs at a second mark time 32(2). The second bit of the transmitted byte is a "1", and is represented in FIG. 2 by non-illuminated horizontal raster line 30(3). Non-illuminated raster line 30(3) produces no light pulse and no rising edge at the third mark time 32(3). The third bit of the transmitted byte is a "0", and is represented in FIG. 2 by illuminated horizontal raster line 30(4). Illuminated raster line 30(4) produces a light pulse 31(4). The rising edge of light pulse 31(4) occurs at a fourth mark time 32(4). The remaining bits of the byte are transmitted in a similar manner, followed by a stop bit which is represented by non-illuminated raster line 30(1).
FIG. 4 shows an external face of programmable watch 12, which is illustrated for discussion proposes as the Timex.RTM. Data-Link.TM. watch. Other watch constructions as well as other portable information devices can be used in the context of this invention. Watch 12 includes a small display 33 (such as an LCD), a mode select button 34, a set/delete button 36, next/previous programming buttons 38 and 40, and a display light button 42. Optical sensor 13 is positioned adjacent to display 32. In the programming mode, display 32 indicates the programming option, and what data is being entered therein. During the normal operational mode, display 32 shows time of day, day of week, or any other function common to watches.
Referring now to FIG. 5, watch 12 includes a CPU (Central Processing Unit) 68 for performing data processing tasks, a ROM (Read Only Memory) 70 for storing initial power-up programs and other identification information, and a RAM (Random Access Memory) 72 for data storage. ROM 70 has an example capacity of approximately 16 Kbytes, while RAM 72 has an example capacity of 1 Kbyte. A display RAM 74 is provided to temporarily store data used by display driver 76 to depict visual information on display 32. These components can be incorporated into a single microprocessor-based integrated circuit. One appropriate microprocessor IC is available from Motorola Corporation as model MC68HC05HG.
Watch 12 has an optical sensor 13 which is coupled to a digital serial receiver or UART 60. UART 60 is a conventional, off-the-shelf circuit which receives data in eight-bit words surrounded by start and stop bits. However, UART 60 must receive a conventional NRZ (non-return to zero) or level-based signal--in contrast to the edge-based signal illustrated in FIG. 3. Therefore, watch 12 includes conversion circuitry 61 to produce a level-based or NRZ serial signal from the edge-based signal generated by computer 11 and CRT 14. Such conversion circuitry consists of a retriggerable monostable oscillator. Conversion circuitry 61 also includes amplifier and filter circuits.
FIG. 6 shows a level-based signal 80 after conversion by conversion circuitry 61. For reference, the edge-based signal 29 of FIG. 3 is shown below level-based signal 80. The initial start bit pulse 31(1) of FIG. 3 is inverted and extended by conversion circuitry 61 until the next mark time. The remaining data bits and stop bit are similarly extended so that signal 80 only changes level when a bit has a different value than the previous bit. This is in contrast to signal 29 of FIG. 3, where the signal always returns to a "low" value before the next bit.
The output of conversion circuitry 61 is fed to UART 60. UART 60 is coupled to an internal bus 62, which is preferably an eight-bit bus. Inputs received from the control buttons on the watch, referenced generally by box 64, are detected and deciphered by button control circuit 66 and placed on bus 62.
To program the watch, the computer is first loaded with a compatible time management software and optical pattern generating software. One example time management software is Microsoft's.RTM. Schedule+.TM. for Windows.TM. and a suitable optical pattern generating software is Timex.RTM. Data-Link.TM. communications software. The user selects a desired option from a menu of choices displayed on the monitor in a human-intelligible form. For instance, suppose the user wants to enter his/her appointments and tasks for the month of January, including a reminder for his/her mother's birthday on Jan. 18, 1995. The user inputs the scheduling information on the computer using a keyboard and/or mouse input device. The user then sets the watch to a programming mode using control buttons 34-40 and holds optical sensor 13 in juxtaposition with monitor screen 22. A sequence of changing optical patterns having horizontal contiguously-scanned lines begin to flash across the monitor screen as shown in FIG. 3 to optically transmit data regarding the various appointments and tasks. In about 20 seconds, the system will have transmitted as many as 70 entries, including the birthday reminder. These entries are kept in data RAM 72.
The system described above is extremely convenient and easy to use. However, it does have a significant drawback in that it cannot be used with some types of computer displays. Specifically, LCD screens do not generate light pulses which can be sensed by the optical sensor of the Data-Link.TM. watch. Accordingly, another method must be used to program the watch from laptop computers which use non-scanned displays.
It has been contemplated that communication from such computers to the Data-Link.TM. watch could be accomplished LED's with (light-emitting diodes) connected to the serial printer interfaces of the computers. However, this would require special conversion circuitry to convert the level-based serial signal produced by a serial printer interface to the edge-based serial format expected and required by the Data-Link.TM. watch. It would be desirable to eliminate the need for such special conversion circuitry. Another problem with the previously-contemplated approach is that users might have difficulty in correctly positioning the LED relative to the watch and in signaling the computer when alignment has been achieved. Again, it would be desirable to eliminate this concern.